import { IMessageBase } from "../../Framework/MQ/IMessageBase";
import { MessageManager } from "../../Framework/MQ/MessageManager";
import { SerializeStream } from "../../Framework/Serialize/SerializeStream";
type int = number;
//class SMagicTowerInfo
    
    export  class SMagicTowerInfo extends IMessageBase
    {
        constructor(arg1: Boolean=false)
        {
            
            super();if (arg1) 
            {
                MessageManager.instance().regist(this);
            }
            return;
        }

        public /* override */ getType(): int
        {
            return this._type;
        }

        public /* override */ clone(): IMessageBase
        {
            return new SMagicTowerInfo();
        }

        public /* override */ __write(arg1: SerializeStream): void
        {
            arg1.writeInt(this.floor);
            arg1.writeInt(this.useSec);
            arg1.writeInt(this.remainSec);
            arg1.writeInt(this.killBossNum);
            arg1.writeInt(this.totalBossNum);
            arg1.writeInt(this.bestTime);
            arg1.writeInt(this.expRate);
            arg1.writeInt(this.totalExp);
            arg1.writeBool(this.resetTime);
            arg1.writeString(this.bestPlayerName);
            return;
        }

        public /* override */ __read(arg1: SerializeStream): void
        {
            this.floor = arg1.readInt();
            this.useSec = arg1.readInt();
            this.remainSec = arg1.readInt();
            this.killBossNum = arg1.readInt();
            this.totalBossNum = arg1.readInt();
            this.bestTime = arg1.readInt();
            this.expRate = arg1.readInt();
            this.totalExp = arg1.readInt();
            this.resetTime = arg1.readBool();
            this.bestPlayerName = arg1.readString();
            return;
        }

        public /* const */_type: int=68;

        public /* var */floor: int;

        public /* var */useSec: int;

        public /* var */remainSec: int;

        public /* var */killBossNum: int;

        public /* var */totalBossNum: int;

        public /* var */bestTime: int;

        public /* var */expRate: int;

        public /* var */totalExp: int;

        public /* var */resetTime: Boolean;

        public /* var */bestPlayerName: string;

        public static /* var */_regist: SMagicTowerInfo;
    }

            SMagicTowerInfo._regist = new SMagicTowerInfo(true);
        